import { PermissionAction } from '@supabase/shared-types/out/constants' import { useParams } from 'common' import { PageContainer } from 'ui-patterns/PageContainer' import { PageHeader, PageHeaderDescription, PageHeaderMeta, PageHeaderSummary, PageHeaderTitle, } from 'ui-patterns/PageHeader' import { PageSection, PageSectionContent } from 'ui-patterns/PageSection' import { GenericSkeletonLoader } from 'ui-patterns/ShimmeringLoader' import { PerformanceSettingsForm } from '@/components/interfaces/Auth/PerformanceSettingsForm' import AuthLayout from '@/components/layouts/AuthLayout/AuthLayout' import DefaultLayout from '@/components/layouts/DefaultLayout' import NoPermission from '@/components/ui/NoPermission' import { UnknownInterface } from '@/components/ui/UnknownInterface' import { useAsyncCheckPermissions } from '@/hooks/misc/useCheckPermissions' import { useIsFeatureEnabled } from '@/hooks/misc/useIsFeatureEnabled' import type { NextPageWithLayout } from '@/types' const PerformancePage: NextPageWithLayout = () => { const { ref } = useParams() const showPerformance = useIsFeatureEnabled('authentication:performance') const { can: canReadAuthSettings, isSuccess: isPermissionsLoaded } = useAsyncCheckPermissions( PermissionAction.READ, 'custom_config_gotrue' ) if (!showPerformance) { return } if (isPermissionsLoaded && !canReadAuthSettings) { return } return ( <> Performance Configure settings to optimize your Auth server's performance {!isPermissionsLoaded ? ( ) : ( )} ) } PerformancePage.getLayout = (page) => ( {page} ) export default PerformancePage